import axios from 'axios'

export function request(config){
  return new Promise((resolve,reject) =>{
      const instance = axios.create({
        baseURL: 'https://www.fastmock.site/mock/4fb515b645dbd4c160c4170308c16bb3/mall',
        timeout: 5000
      })
    /*
      interceptor使用情况：
      1. 处理config中一些不符合服务器的信息
      2. 每次发送网络请求时，希望在界面添加一个响应转圈的图标 show,然后在响应拦截隐藏
      3. 某些网络请求必须携带一些信息(用户登陆token),如果没有这些信息，会拦截让用户跳转到其他位置
     */
      instance.interceptors.request.use(config =>{
        console.log(config)
        return config //一定要返回config!
      },err =>{
        console.log(err)
      })

      instance.interceptors.response.use(res =>{
        console.log(res)
        return res.data //一定要返回给请求的调用者，让它对返回的数据进行后续处理
      },err =>{
        console.log(err)
      })
      return instance(config)
})
}

